/**
 * 解析歌词字符串
 * 得到时间time和歌词words
 */
function praselrc(){
    var result=[];
    var lines=lrc.split('\n');
    for(var i=0;i<lines.length;i++){
        var str=lines[i];
        var parts=str.split(']');
        var time=parts[0].substring(1);
        var obj={
            time:parestime(time),
            words:parts[1],
        }
        result.push(obj);
    }
    return result;
}
var lrcdata=praselrc();
/**
 * 将时间字符串转换为秒数
 */
function parestime(time){
    var parts=time.split(':');
    return (parts[0]*60 + parseFloat(parts[1]));
}
/**
 * 获取需要的dom元素
 */
doms={
    audio:document.querySelector('audio'),
    container:document.querySelector('.container'),
    ul:document.querySelector('.container ul'),
    img:document.querySelector('.wrapper img'),
}

/**
 * 计算出歌词播放到几秒的情况下
 * 要高亮显示的歌词
 * 如果没有高亮显示的歌词就显示-1
 */
function findindex() {
    for (let i = 0; i < lrcdata.length; i++) {
        if(doms.audio.currentTime<lrcdata[i].time){
            return Math.max(i-1,0);
        }
    }
    //歌词到最后一句了
    return lrcdata.length-1;
}

/**
 * 界面
 */
function createElement() {
    var frag=document.createDocumentFragment();
    for (let i = 0; i < lrcdata.length; i++) {
        var li=document.createElement('li');
        li.textContent=lrcdata[i].words;
        frag.appendChild(li);
    }
    doms.ul.appendChild(frag);
}
createElement();
var maxoffset=doms.ul.clientHeight-doms.container.clientHeight/2;
/**
 *ul上下偏移，就是歌词滚动 
 */
function setoffset(){
    var containerheight=doms.container.clientHeight;
    var liheight=doms.ul.children[0].clientHeight;
    var index=findindex();
    var offset=index*liheight+liheight/2-containerheight/2;
    if(offset<0){
        offset=0;
    }
    if(offset>maxoffset){
        offset=maxoffset;
    }
    doms.ul.style.transform=`translateY(${-offset}px)`;
    //添加.active样式
    var li=doms.ul.querySelector('.active');
    if(li){
        li.classList.remove('active');
    }
    li=doms.ul.children[index];
    if(li){
        li.classList.add('active');
    }
}
doms.audio.addEventListener('timeupdate',setoffset);
//实现轮播图
var imgindex=0;
var index=findindex();
function showImg(){
    doms.img.src=imglist[imgindex];
}
function nextImg() {
    imgindex++;
    if(imgindex>=imglist.length){
        imgindex=0;
    }
    showImg();
}
 var imgTimer=setInterval(nextImg,10000);
showImg();
//歌曲播放完毕后，停止轮播，消除轮播
doms.audio.addEventListener('ended',function(){
    clearInterval(imgTimer);
    imgTimer=null;
    doms.img.src=imglist[0];
    doms.audio.currentTime=0;
    doms.audio.play();
    imgTimer=setInterval(nextImg,10000);
})

